Avoid ICE when param-env normalization leaves unresolved inference variables#153574
Conversation
|
rustbot has assigned @JonathanBrouwer. Use Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
aeeca98 to
c652d9d
Compare
|
r? lcnr |
| @@ -308,11 +308,10 @@ fn do_normalize_predicates<'tcx>( | |||
| // | |||
| // @lcnr: Let's still ICE here for now. I want a test case | |||
| // for that. | |||
There was a problem hiding this comment.
sorry for the late review
please update this comment, r=me otherwise
| #![allow(sized_hierarchy_migration)] //~ WARN unknown lint: `sized_hierarchy_migration` | ||
| #![feature(sized_hierarchy)] // added to keep parameters unconstrained | ||
|
|
||
| pub trait Foo<T: std::marker::PointeeSized> { |
There was a problem hiding this comment.
please use #[rustc_no_implicit_bounds] instead of PointeeSized
|
This PR changes a file inside |
a8f3a2a to
1df1c8a
Compare
|
@bors r=lcnr |
…-normalization-ice, r=lcnr Avoid ICE when param-env normalization leaves unresolved inference variables Fixes rust-lang#153354 Because the impl is already ill-formed, those variables are not fully constrained, so zfully_resolve` fails. We previously treated that as an immediate compiler bug with `span_bug!`, which caused an ICE on invalid input.
This comment has been minimized.
This comment has been minimized.
|
This pull request was unapproved. This PR was contained in a rollup (#154584), which was unapproved. |
avoid ICE on invalid param-env normalization remove 120033 crash test fix comments use rustc_no_implicit_bounds set #![allow(incomplete_features)]
1df1c8a to
d29c489
Compare
|
@bors r=lcnr |
…-normalization-ice, r=lcnr Avoid ICE when param-env normalization leaves unresolved inference variables Fixes rust-lang#153354 Because the impl is already ill-formed, those variables are not fully constrained, so zfully_resolve` fails. We previously treated that as an immediate compiler bug with `span_bug!`, which caused an ICE on invalid input.
Rollup of 7 pull requests Successful merges: - #142659 (compiler-builtins: Clean up features) - #153574 (Avoid ICE when param-env normalization leaves unresolved inference variables) - #153648 (Fix EII function aliases eliminated by LTO) - #153790 (Fix regression when dealing with generics/values with unresolved inference) - #153893 (Lex lifetimes as identifiers, recover from emoji and emit appropriate error) - #153980 (refactor: move doc(rust_logo) check to parser) - #154551 (Skip suggestions pointing to macro def for assert_eq)
Rollup of 7 pull requests Successful merges: - #142659 (compiler-builtins: Clean up features) - #153574 (Avoid ICE when param-env normalization leaves unresolved inference variables) - #153648 (Fix EII function aliases eliminated by LTO) - #153790 (Fix regression when dealing with generics/values with unresolved inference) - #153893 (Lex lifetimes as identifiers, recover from emoji and emit appropriate error) - #153980 (refactor: move doc(rust_logo) check to parser) - #154551 (Skip suggestions pointing to macro def for assert_eq)
…-normalization-ice, r=lcnr Avoid ICE when param-env normalization leaves unresolved inference variables Fixes rust-lang#153354 Because the impl is already ill-formed, those variables are not fully constrained, so zfully_resolve` fails. We previously treated that as an immediate compiler bug with `span_bug!`, which caused an ICE on invalid input.
…-normalization-ice, r=lcnr Avoid ICE when param-env normalization leaves unresolved inference variables Fixes rust-lang#153354 Because the impl is already ill-formed, those variables are not fully constrained, so zfully_resolve` fails. We previously treated that as an immediate compiler bug with `span_bug!`, which caused an ICE on invalid input.
…-normalization-ice, r=lcnr Avoid ICE when param-env normalization leaves unresolved inference variables Fixes rust-lang#153354 Because the impl is already ill-formed, those variables are not fully constrained, so zfully_resolve` fails. We previously treated that as an immediate compiler bug with `span_bug!`, which caused an ICE on invalid input.
Rollup of 9 pull requests Successful merges: - #154582 (miri subtree update) - #142659 (compiler-builtins: Clean up features) - #153574 (Avoid ICE when param-env normalization leaves unresolved inference variables) - #153648 (Fix EII function aliases eliminated by LTO) - #153790 (Fix regression when dealing with generics/values with unresolved inference) - #154551 (Skip suggestions pointing to macro def for assert_eq) - #154574 (delete several `ui/consts` tests) - #154577 (Update `mir-opt` 64-bit panic-abort tests for `Alignment` rename) - #154579 (remove debug requirement from hooks)
Rollup merge of #153574 - TaKO8Ki:self-referential-param-env-normalization-ice, r=lcnr Avoid ICE when param-env normalization leaves unresolved inference variables Fixes #153354 Because the impl is already ill-formed, those variables are not fully constrained, so zfully_resolve` fails. We previously treated that as an immediate compiler bug with `span_bug!`, which caused an ICE on invalid input.
Rollup of 9 pull requests Successful merges: - rust-lang/rust#154582 (miri subtree update) - rust-lang/rust#142659 (compiler-builtins: Clean up features) - rust-lang/rust#153574 (Avoid ICE when param-env normalization leaves unresolved inference variables) - rust-lang/rust#153648 (Fix EII function aliases eliminated by LTO) - rust-lang/rust#153790 (Fix regression when dealing with generics/values with unresolved inference) - rust-lang/rust#154551 (Skip suggestions pointing to macro def for assert_eq) - rust-lang/rust#154574 (delete several `ui/consts` tests) - rust-lang/rust#154577 (Update `mir-opt` 64-bit panic-abort tests for `Alignment` rename) - rust-lang/rust#154579 (remove debug requirement from hooks)
Fixes #153354
Because the impl is already ill-formed, those variables are not fully constrained, so zfully_resolve
fails. We previously treated that as an immediate compiler bug withspan_bug!`, which caused an ICE on invalid input.